package 代码记录.指定公司代码练习记录.华为_2024.华为od_2024笔试真题;

import java.util.Scanner;

/**
 * @author zx
 * @create 2024-02-28 20:23
 * 运输时间 - 100%(不像)
 */
public class Test3 {
    /**
     * M（1 <= M <= 20）辆车需要在一条不能超车的单行道到达终点，起点到终点的距离为N（1<=N<=400）。
     * 速度快的车追上前车后，只能以前车的速度继续行驶，求最后一车辆到达目的地花费的时间。
     * 注：每辆车固定间隔1小时出发，比如第一辆车0时出发，第二辆车1时出发，依次类推
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int M = sc.nextInt();//车辆数
        int N = sc.nextInt();//到终点的距离
        int[] arr = new int[M];
        for(int i = 0;i < arr.length; i++){
            arr[i] = sc.nextInt();
        }
        double res = helper(arr, N);
        System.out.println(res);
    }
    private static double helper(int[] arr, int N) {
        double res = 0;
        for(int i = 0;i < arr.length; i++){
            double time = ((double)N) / arr[i];
            if(i == 0 && time > res - 1){//头车
                res = time;
            } else if (i != 0 && time > res - 1) {
                res = time;
            } else if (i != 0 && time <= res - 1) {
                res = res - 1;
            }
        }
        return res;
    }
}
